package com.mdb.open.trade.domain.bo.trade;

import com.mdb.bc.api.data.DataObjectBase;
import com.mdb.open.common.enums.trade.type.ProcessLogTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

/**
 * @description:
 * @author: you.yichao
 * @create: 2019-07-06 15:10
 **/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="SaveLoanProcessLogBo", description="保存融资申请时序Bo对象")
public class SaveLoanProcessLogBo extends DataObjectBase {

    /**
     * 融资申请单号
     */
    @ApiModelProperty(value = "融资申请单号")
    @NotBlank(message = "融资申请单号不允许为空")
    private String applyOrderNo;

    /**
     * 客户编码
     */
    @ApiModelProperty(value = "客户编码")
    @NotBlank(message = "客户编码不允许为空")
    private String customerCode;

    /**
     * 商户编号
     */
    @ApiModelProperty(value = "商户编号")
    @NotBlank(message = "商户编号不允许为空")
    private String merchantNo;

    /**
     * 流程类型（完结情况）
     */
    @ApiModelProperty(value = "流程类型（完结情况）")
    @NotBlank(message = "流程类型（完结情况）不允许为空")
    private ProcessLogTypeEnum type;

    /**
     * 节点完成时间
     */
    @ApiModelProperty(value = "节点完成时间")
    @NotNull(message = "节点完成时间不允许为空")
    private LocalDateTime finishDate;

}
